﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace HotelManager
{
    public class Manager : Employee, IRecepcionist
    {
        public Manager(string firstName, string lastName, string address, string egn, string id, string phone, 
            string nationality, decimal salary, decimal discount)
            : base(firstName, lastName, address, egn, id, phone, nationality, salary, discount)
        {

        }

        public void CheckIn(Person guest, Room room, int duration, Engine engine)
        {
            RentInfo rentInfo = new RentInfo(guest, room, DateTime.Now, duration);

            room.Rent(rentInfo, engine);

            engine.SaveData();
        }

        public void CheckOut(Person guest, Room room, Engine engine)
        {
            room.IsOccupied = false;
            room.IsClean = false;
            room.Minibar.Restock();

            engine.SaveData();
        }


        public void Reserve(Person guest, Room room, DateTime timeForCheckIn, int duration, Engine engine)
        {
            throw new NotImplementedException();
        }

        public void CancelReservation(Person guest, Room room, Engine engine)
        {
            throw new NotImplementedException();
        }
    }
}
